草庐IT

Android TextView 超链接

全部标签

c++ - uint8_t 和 unsigned char 链接错误

我正在使用模板函数:templatevoidfunc(constT&value){obj->func(value);}其中obj是类的对象:voidmy_object::func(int64_tvalue){...}voidmy_object::func(uint64_tvalue){...}voidmy_object::func(uint32_tvalue){...}voidmy_object::func(uint16_tvalue){...}voidmy_object::func(uint8_tvalue){...}问题在于uint8_t重载了my_object::func()覆盖

c++ - 如何链接jsoncpp?

如何使用g++将jsoncpp与C++程序链接起来?我试过:g++-oprogramprogram.cpp-L/path/to/library/files-ljsoncpp,-ljson,-llibjsoncpp但是g++一直在说:/usr/bin/ld:cannotfind-lsomething 最佳答案 您也可以尝试使用新的合并版本的jsoncpp,它是0.6.0版的新版本。Amalgamated版本允许您使用jsoncpp,只需向您的项目添加一个包含几个头文件和一个.cpp文件的目录。然后,您可以直接将jsoncpp编译到您的

c++ - Ld 神奇地覆盖静态链接的符号

这几天我们一直在处理非常奇怪的问题。我什至无法理解它是如何发生的——当第三方(MATLAB)程序使用我们的共享库时,它会以某种方式用它自己的符号覆盖我们的一些符号(准确地说是增强)。这些符号是静态链接的并且(!!)是本地的。这是交易-我们使用boost1.47,MATLAB有boost1.40。目前,库在从我们的库调用它们的boost(正则表达式)时会出现段错误。所以,这是神奇的:我们没有依赖库,ldd:linux-vdso.so.1=>(0x00007fff4abff000)libpthread.so.0=>/lib/libpthread.so.0(0x00007f1a3fd6500

c++ - 如何 "decrypt"链接器方法名称?

我正在使用回溯来打印应用程序的堆栈跟踪,我得到类似的东西libQtCore.so.4(_ZN11QMetaObject8activateEP7QObjectPKS_iPPv+0x843)[0x7f889d20cf33]libQtGui.so.4(_ZN7QAction9triggeredEb+0x32)[0x7f889d76c2f2]libQtGui.so.4(_ZN7QAction8activateENS_11ActionEventE+0xb0)[0x7f889d76d670]libQtGui.so.4(+0x6242f4)[0x7f889db862f4]有没有办法将“链接器名称”转

c++ - 为什么在链接时出现多重定义错误?

我用这两个文件here和here.我在两个单独的文件中创建了一个类:modul1.h#ifndefMODUL1_H#defineMODUL1_H#include#include#include"easylogger.h"classModul1{public:Modul1(std::stringname);protected:private:easylogger::Logger*log;};#endif//MODUL1_H和modul1.cpp#include"modul1.h"Modul1::Modul1(std::stringname):log(neweasylogger::Logg

c++ - 这行得通吗? C++ 多重继承和构造函数链接

考虑一个继承自Foo和Baz的类Waldo,即:classWaldo:publicFoo,publicBaz{...};当我创建一个新的Waldo实例时:Waldo*w=newWaldo;会调用Foo和Baz构造函数吗?如果默认情况下不调用它们,是否有一种简单的方法在类声明或Waldo构造函数的声明/定义中强制调用它们?(看起来我可能正在尝试进行构造函数链接,据称C++不会那样做。我不确定。)我想做的是“注释”各种类声明,其中注释导致(除其他事项外)被注释类的实例链接到由注释类维护的列表中。例如,这让我可以遍历所有具有Baz性质的对象的列表,对它们应用某种操作,而不必担心我是否记得将实

c++ - 链接后剥离共享库是否安全?

假设我得到了lib.so,我编译了二进制文件mySoft并将其链接到lib.so。在这一点上,考虑到一切都按预期工作,是否安全地使用lib.so并使用strip-slib.so剥离它?要明确的是,在正确生成mySoft之后,我对将其他二进制文件链接到我的lib.so不感兴趣,我只对保留感兴趣mySoft工作并获得一些磁盘空间,并且可能在性能方面有小优势。 最佳答案 是的,这是安全的。strip只移除不需要的符号(因为它们已经被链接)。这些符号对调试很有用,但绝不会仅在执行代码时需要它们。

c++ - Qt 信号/插槽示例的链接器错误

我有一个包含多个使用信号和槽的类的Qt应用程序,它编译得很好。但是,当我在主CPP(main.cpp)文件中创建自定义类时,出现链接器错误。这是我使用的代码:classCounter:publicQObject{Q_OBJECTpublic:Counter(){m_value=0;}intvalue()const{returnm_value;}publicslots:voidsetValue(intvalue){if(value!=m_value){m_value=value;qDebug()错误如下:Error4errorLNK2001:unresolvedexternalsymbo

c++ - C++ 命名空间中静态函数的链接

在非全局命名空间中声明的静态函数的链接是什么?例子:namespacefoo{...staticvoidbar(inta){}}这与在全局命名空间范围内声明的静态方法有什么不同吗?有人可以指出标准中的布局位置吗?谢谢! 最佳答案 static在命名空间级别的函数中使用时表示内部链接。具体引用自3.5ProgramLinkage,paragraph3:Anamehavingnamespacescope(3.3.6)hasinternallinkageifitisthenameofavariable,functionorfunction

c++ - QMediaPlayer undefined reference 链接器错误

我安装了Qt5,但由于Qt5不支持Phonon,我不得不使用其他东西,所以我决定使用QtMultimedia。.pro文件:QT+=coreguiCONFIG+=mobilityMOBILITY+=multimedia.cpp代码:#include"mainwindow.h"#include"ui_mainwindow.h"#include#include#include...voidMainWindow::on_pushButton_clicked(){QMediaPlayer*player=newQMediaPlayer(this);player->setVolume(50);pl